from api.contact_manage.department_manage import DepartmentManage
from api.contact_manage.member_manage import MemberManage
from api.oa.check_in import CheckIn

class PageFactory:
    '''
    1.简单工厂模式，专门定义一个类来负责创建其他类型的页面的实例
    2.提供了一个入口，比如添加了新的页面，其他研发调用代码的过程中，可以以factory为主
    '''
    @classmethod
    def create_page_object(cls, name, url, token):
        if name == 'member_manage':
            return MemberManage(url, token)
        elif name == 'department_manage':
            return DepartmentManage(url, token)
        elif name == 'check_in':
            return CheckIn(url, token)
        else:
            raise Exception('此页面不在页面工厂中！')
